#ifndef _QUEUE_H
#define _QUEUE_H

/* 队列和栈的局限性就是只能够操作int性的数据，无法是其他类型的，
	比如结构体，这个时候如果元素是指针就好办了吧？ */
	
#define QUEUESIZE 100
typedef int QUEUEELEMTYPE;
/*
* top******tail
*/
typedef struct queue
{
	int top; // 队头 用于出队
	int tail; //队尾 用于进队
	int size;
	QUEUEELEMTYPE* quePointer; //队列所在的内存空间对应的指针
}QUEUE;

void InitQueue(QUEUE* que,void* quePointer);
int EnterQueue(QUEUE* que,const int* const data);
int OutQueue(QUEUE* que);
int LenQueue(QUEUE* que);
void PrintQueue(QUEUE* que);
void FreeQueue(QUEUE* que);


#endif